For many years, computer main memory has been dominated by dynamic random access memory (DRAM) because of its high density, fast access time, and low cost. However DRAM is volatile and loses its contents when power is removed. DRAM's volatility has required computer users to wait for several minutes every time the computer starts up while the basic input-output system (BIOS) and operating system load information from a slower computer disk and set up the DRAM memory for normal program execution.
Floating-gate non-volatile memory is another memory technology that has low cost and high density. Some computers today use solid-state drives based on floating-gate non-volatile memory in place of disk drives to store the operating system and application programs. However floating-gate non-volatile memory does not support random access because it suffers from long write times and therefore it cannot replace DRAM in the system.
In recent years new types of non-volatile memory with random access capability, referred to as NVRAM, have been emerging. These new NVRAM types include phase change memory (PCM), spin-torque transfer (STT) memory, memristor, magneto-resistive random access memory (MRAM), ferro-electric random access memory (FeRAM), and resistive random access memory (RRAM). Once NVRAM becomes commercially available, it will be a more suitable replacement for DRAM as main computer memory than traditional floating-gate memory because of its fast, random access times.
However, existing computer software is not adapted to take advantage of these new types of NVRAM to provide a better user experience. In addition while computer operating systems can be modified to add new application programming interfaces (APIs) to allow application software to use the persistence of the NVRAM, it would be prohibitively costly to rewrite the very large base of application software to take advantage of these new APIs.
In the following description, the use of the same reference numerals in different drawings indicates similar or identical items. Unless otherwise noted, the word “coupled” and its associated verb forms include both direct connection and indirect electrical connection by means known in the art, and unless otherwise noted any description of direct connection implies alternate embodiments using suitable forms of indirect electrical connection as well.